package cn.exrick.xboot.securityAdvisor.controllerImpl

import cn.exrick.xboot.base.dto.SecurityAdvisorServiceEnterpriseDto
import cn.exrick.xboot.base.service.ISecurityAdvisorServiceEnterpriseService
import cn.exrick.xboot.base.vo.EnterpriseSecurityAdvisorListVo
import cn.exrick.xboot.base.vo.EnterpriseUserDetailVo
import cn.exrick.xboot.base.vo.SecurityAdvisorDetailVo
import cn.exrick.xboot.base.vo.SecurityAdvisorServiceEnterpriseVo
import cn.exrick.xboot.core.common.vo.PageVo
import cn.exrick.xboot.core.common.vo.Result
import cn.exrick.xboot.securityAdvisor.controller.ISecurityAdvisorController
import org.springframework.beans.factory.annotation.Autowired
import org.springframework.web.bind.annotation.RestController

@RestController
open class SecurityAdvisorServiceEnterpriseController: ISecurityAdvisorController.SecurityAdvisorServiceEnterprise {

    @Autowired
    private val iSecurityAdvisorServiceEnterpriseService: ISecurityAdvisorServiceEnterpriseService? = null

    override fun getEnterpriseSecurityAdvisor(pageVo: PageVo): Result<MutableMap<String, Any?>>? {

        return iSecurityAdvisorServiceEnterpriseService!!.getEnterpriseSecurityAdvisor(pageVo)
    }

    override fun getLeaveSecurity(pageVo: PageVo): Result<MutableMap<String, Any?>>? {

        return iSecurityAdvisorServiceEnterpriseService!!.getLeaveSecurity(pageVo)
    }

    override fun removeEnterpriseSecurityAdvisor(ids: Array<out String>): Result<Any>? {

        return iSecurityAdvisorServiceEnterpriseService!!.removeEnterpriseSecurityAdvisor(ids)
    }

    override fun getCompanySecurityAdvisorList(): Result<MutableList<EnterpriseSecurityAdvisorListVo>> {

        return iSecurityAdvisorServiceEnterpriseService!!.getCompanySecurityAdvisorList()
    }

    override fun createSecurityAdvisorServiceEnterprise(securityAdvisorServiceEnterpriseDto: SecurityAdvisorServiceEnterpriseDto): Result<Any> {

        return iSecurityAdvisorServiceEnterpriseService!!.createSecurityAdvisorServiceEnterprise(securityAdvisorServiceEnterpriseDto)
    }

    override fun getSecurityAdvisorServiceEnterpriseVoList(userId: String): MutableList<SecurityAdvisorServiceEnterpriseVo>? {

        return iSecurityAdvisorServiceEnterpriseService!!.getSecurityAdvisorServiceEnterpriseVoList(userId)
    }

    override fun getServiceEnterpriseUser(pageVo: PageVo): Result<Map<String, Any?>>? {

        return iSecurityAdvisorServiceEnterpriseService!!.getServiceEnterpriseUser(pageVo)
    }

    override fun getServiceEnterpriseUserDetail(id: String): Result<EnterpriseUserDetailVo?>? {

        return iSecurityAdvisorServiceEnterpriseService!!.getServiceEnterpriseUserDetail(id)
    }


}